
org100h
JRFPRG
JPx28E
JPLOADPARTS
JPSTIM2
JPBORD
DB0
JPEXTINTSZ
DB0C9H
EXOSRUT:
.PHASE30H
EXS1DI
LD(5AH),A
ORA
EX(SP),HL
JR3FH
PUSHAF
SCF
JR45H
JP0
LDA,(HL)
INCHL
EX(SP),HL
LD(59H),A
INA,(0B3H)
LD(55H),A
LDA,0
OUT(0B3H),A
JP0C410H
OUT(0B2H),A
LDA,0
ORA
EI
RET
EX(SP),HL
EXAF,AF'
LD(HL),B
EXSLEQU$-EXS1
.DEPHASE

FPRG:LDHL,FPRG1
LDDE,2000H
LDBC,FPRGLN
LDIR
JP2000H
ORG2000H
FPRG1LDSP,2000H
ZX_LPT:LDA,0FFH
OUT(0B2h),A
LDDE,4000h
LDHL,5800h
LDBC,0020h
EXX
LDDE,8660h
EXX
LDA,0C1h
EXAF,AF
x2456:EXAF,AF
DECA
JRZ,x247F
EXAF,AF
LD(ZXATTR),HL
LD(ZXBITMAP),DE
EXX
LDHL,ZXLPB
LDBC,16
LDIR
EXX
INCD
LDA,D
AND7
JRNZ,x2456
ADDHL,BC
LDA,E
SUB0E0h
LDE,A
JRNC,x2456
LDA,D
SUB8
LDD,A
JRx2456
x247F:EXX
LDHL,ZXLPT
LDBC,0E0h
LDIR
LDA,66H
OUT(82h),A
LDA,0CCH
OUT(83h),A
LDA,0FAH
OUT(0B2H),A
LDA,0FBH
OUT(0B3H),A
LDA,0FDH
OUT(0B1H),A
LDA,42H
LDIX,4000H
LDDE,2FBFH
ANDA
EXAF,AF'
CALLLOADPARTS
LDA,0BH
LDIX,3C00H
LDDE,3FFFH-3C00H
ANDA
EXAF,AF'
CALLLOADPARTS
DI
LDA,0C3H
LDHL,SOUND
LD(8),A
LD(9),HL
LDHL,SPKEYB
LD(10H),A
LD(11H),HL
LDHL,EXTINT
LD(18h),A
LD(19h),HL
LDHL,ATTRCONV
LD(20H),A
LD(21H),HL
LDHL,IT
LD(28H),A
LD(29H),HL
LDA,0F3H
LD(0),A
JP5B01H
IT:DI
PUSHAF
LDA,30h
OUT(0B4h),a
LDA,(LEDWAIT)
INCA
LD(LEDWAIT),A
CP25
JRNZ,ITV
SUBA
LD(LEDWAIT),A
LDA,(SETLED)
INCA
INCA
CPL
LD(SETLED),A
ITVLDA,(SETLED)
INCA
OUT(18H),A
POPAF
EI
RET
LEDWAITDB0
SETLEDDB0
ATTRCONV:PUSHAF
PUSHDE
LDD,A
BIT6,A
JRZ,$+24
AND07h
RRA
JRNC,$+4
SET2,A
LDE,A
LDA,D
AND38h
BIT3,A
JRZ,$+4
XOR48h
ADDA,E
OR88h
JR$+10
AND07h
LDE,A
LDA,D
AND38h
RLCA
ADDA,E
POPDE
LD(HL),A
POPAF
RET
SPKEYB:CP0FFH
JPZ,EXTINT
PUSHHL
PUSHDE
PUSHBC
LDE,A
LDD,1FH
LDHL,$+47
LDB,8
PUSHBC
RRE
JRC,$+27
LDB,5
LDC,0
LDA,(HL)
INCHL
OUT(0B5H),A
INA,(0B5H)
AND(HL)
SCF
JRNZ,$+3
CCF
RLC
INCHL
DJNZ$-14
LDA,C
ANDD
LDD,A
JR$+6
LDBC,10
ADDHL,BC
POPBC
DJNZ$-35
LDA,D
POPBC
POPDE
POPHL
RET
DB0,10H,0,8,0,20H,0,40H,0,80H
DB1,4,1,10H,1,8,1,20H,1,40H
DB2,10H,2,8,2,20H,2,40H,2,2
DB3,10H,3,8,3,20H,3,40H,3,2
DB3,4,3,1,5,1,5,4,5,10H
DB2,4,2,1,9,1,9,4,9,10H
DB1,1,6,1,6,4,6,10H,7,40H
DB0,4,0,1,8,1,8,20H,8,40H
EXTINT:CALLEXTERNAL
PUSHBC
PUSHAF
CALLINTERNAL
LDC,A
POPAF
ORC
POPBC
CPL
AND1FH
RET
EXTERNAL:PUSHBC
LDB,0
CALLEXTC0
PUSHBC
CALLEXTC0
LDA,C
POPBC
ORC
POPBC
RET
EXTC0LDC,8
EXTC1LDA,B
INCB
OUT(181),A
INA,(182)
RRA
CCF
RLC
JRNC,EXTC1
RET
INTERNAL:PUSHBC
LDC,0
LDA,7
OUT(181),A
INA,(181)
CPL
BIT3,A
JRZ,INTT1
SET3,C
INTT1BIT1,A
JRZ,INTT2
SET2,C
INTT2BIT2,A
JRZ,INTT3
SET0,C
INTT3BIT5,A
JRZ,INTT4
SET1,C
INTT4LDA,8
OUT(181),A
INA,(181)
CPL
BIT6,A
JRZ,INTT5
SET4,C
INTT5LDA,C
POPBC
RET
SOUND:PUSHAF
PUSHAF
LDA,H
LD(SOUND1+1),A
POPAF
SOUND1LD(1000H),A
x1118:PUSHHL
PUSHBC
LDHL,100AH
LDA,0Eh
OUT(0BFh),A
LDA,(HL)
LDC,A
ADDA,A
OUT(0AAh),A
ADDA,A
OUT(0AEh),A
DECHL
LDA,(HL)
LDB,A
ADDA,A
OUT(0ADh),A
ADDA,A
OUT(0A9h),A
DECHL
LDA,(HL)
ADDA,A
ADDA,A
OUT(0A8h),A
OUT(0ACh),A
LDA,(HL)
DECHL
BIT3,(HL)
JRZ,x114B
LDA,B
BIT4,(HL)
JRZ,x114B
LDA,C
BIT5,(HL)
JRZ,x114B
XORA
x114B:OUT(0AFh),A
ADDA,A
OUT(0ABh),A
LDA,(HL)
AND07h
OUT(0A7h),A
DECHL
LDA,(HL)
AND1Ch
OUT(0A6h),A
LDBC,06A6h
DECHL
x115F:DECC
OUTD
JRNZ,x115F
POPBC
POPHL
POPAF
RET
x1182LDHL,1000h
LDB,10h
XORA
x1197:LD(HL),A
INCL
DJNZx1197
LDBC,10A0H
x119E:OUT(C),A
INCC
DJNZx119E
RET
x28E:LDL,2FH
LDDE,0FFFFH
LDBC,0FEFEH
x296:LDA,B
RST10H
CPL
AND1FH
JRZ,x2AB
LDH,A
LDA,L
x29F:INCD
RETNZ
x2A1:SUB8
SRLH
JRNC,x2A1
LDD,E
LDE,A
JRNZ,x29F
x2AB:DECL
RLCB
JRC,x296
LDA,D
INCA
RETZ
CP28H
RETZ
CP19H
RETZ
LDA,E
LDE,D
LDD,A
CP18H
RET
LOADPARTS:LD(STACK),SP
LDSP,3000H
EXAF,AF'
PUSHAF
PUSHIX
PUSHDE
CALLNAMEFIND
PUSHHL
PUSHHL
LDA,3FH
LDI,A
IM1
LDA,30H
OUT(0B4H),A
LDHL,EXOSRUT
LDDE,30H
LDBC,EXSL
LDIR
POPDE
CALLNAMEPRT
LDA,201
POPDE
EXOS1
ORA
JRNZ,LOADERROR
LDA,201
POPHL
POPDE
PUSHHL
ADDHL,DE
POPHL
JRNC,LDPRTT0
LDHL,0
ANDA
SBCHL,DE
LDPRTT0PUSHHL
POPBC
EXOS6
LDA,201
EXOS3
DI
POPAF
LDSP,(STACK)
RETNC
LDA,84H
LDI,A
CALLSTIM2
SCF
RET
STIM2IM2
PUSHAF
LDA,30H
OUT(0B4H),A
POPAF
RET
LOADERROR:LDA,201
EXOS3
DI
POPDE
POPIX
POPAF
CALLSTIM2
ANDA
RET
NAMEPRT:PUSHDE
LDA,0FFH
OUT(0B2H),A
LDHL,SFOR
LDDE,0BEB8H
LDBC,40
LDIR
POPHL
LDDE,0BEB8H+13
LDC,(HL)
INCHL
LDIR
NMPRTC0LDB,10
NMPRTC1LDA,B
DECA
OUT(0B5H),A
INA,(0B5H)
INCA
JRNZ,NMPRTC2
DJNZNMPRTC1
NMPRTC3LDBC,(FLWAIT)
DECBC
LDA,B
ORC
LD(FLWAIT),BC
JRNZ,NMPRTC0
LDBC,600H
LD(FLWAIT),BC
LDHL,0BEB8H+28
LDB,11
NMPRTC4LDA,(HL)
XOR80H
LD(HL),A
INCHL
DJNZNMPRTC4
JRNMPRTC0
NMPRTC2LDHL,0BEB8H
LDDE,0BEB9H
LDBC,40
LDIR
LDA,0FAH
OUT(0B2H),A
RET
FLWAITDW600H
NAMEFIND:LDHL,NAMELIST
LDB,0
NMFC0CP(HL)
INCHL
RETZ
LDC,(HL)
INCC
ADDHL,BC
JRNMFC0
BORD:INA,(0B4H)
AND10H
JRNZ,BORD
LDBC,5FH
BORDC1LDA,(10EH)
OUT(81H),A
BORDC2INA,(0B4H)
AND10H
JRNZ,BORDC2
DECBC
LDA,B
ORC
JRNZ,BORDC1
RET
EXTINTSZ:LDDE,SZOVEG
CALL8894H
RET
SZOVEGDB"J-EXT-1&EXT-2&INT.",0FFH
ZXLPT:DB0FCh,82h,5,6,0,0,0,0,0,0,0,0,0,0
DB0,0,0F7h,8,0Ch,0Ch,0DCh,003h,0E9h,1,0,36h,0
DB49h,0FFh,24h,2Dh,36h,0F7h,8,0Ch,0Ch,0C8h,001h,0E9h,1
DB0,36h,0,49h,0FFh,24h,2Dh,36h,0F7h,8,0Ch,0Ch,0BEh
DB000h,0E9h,1,0,36h,0,49h,0FFh,24h,2Dh,36h,0EDh,2
DB5,6,0,0,0,0,0,0,0,0,0,0,0,0
DB0FFh,0,0,3Fh,0,0,0,0,0,0,0,0,0,0
DB0,0,0FFh,0,6,3Fh,0,0,0,0,0,0,0,0
DB0,0,0,0,0FFh,0,3Fh,0,0,0,0,0,0,0
DB0,0,0,0,0,0,0FFh,52h,6,3Fh,0,0,0,0
DB0,0,0,0,0,0,0,0,0DAh,2,5,6,0,0
DB0,0,0,0,0,0,0,0,0,0,0F7h,8,0Bh,73h
DB0B8h,0FEh,0E9h,1,0,36h,49h,0FFh,0,0,0,0,0F7h
DB8,0Ch,0Ch,86h,002h,0E9h,1,0,36h,49h,0FFh,0,24h
DB2Dh,36h,0F7h,8,0Ch,0Ch,0ACh,002h,0E9h,1,0,36h,0
DB49h,0FFh,24h,2Dh,36h,0FFh,3,5,6,0,0,0,0,0
DB0,0,0,0,0,0,0
ZXLPB:DB0FFh,14h,0Fh,2Fh
ZXATTR:DB0,0
ZXBITMAP:DB0,0,0,4,1,5,2,6,3,7,20h
STACKDW0
SFORDB"Searching:-Pressakey"
NAMELIST:DB42H,12,"BACK_III.PRG"
DB00H,12,"BACK_III.MUS"
DB01H,12,"BACK_III.PR1"
DB02H,12,"BACK_III.PR2"
DB03H,12,"BACK_III.LV1"
DB04H,12,"BACK_III.LV2"
DB05H,12,"BACK_III.LV3"
DB06H,12,"BACK_III.LV4"
DB07H,12,"BACK_III.LV5"
DB08H,12,"BACK_III.LV6"
DB09H,12,"BACK_III.LV7"
DB0AH,12,"BACK_III.END"
DB0BH,10,"SP_CHR.ROM"
FPRGLNEQU$-FPRG1
end


